The print stream introduced to addressing systems and printing systems is generally in the form of an address list, though it may take on other forms. The list must be parsed and checked before format correction and barcoding techniques can be directed to the addresses on the list before creation of a mailpiece.
The print stream generated by a label application often can generally not be printed directly to envelope design or printing applications; therefore, a method and system of transforming a print stream of mailing labels to a print stream for use by an envelope application is of great use in an environment where the face of the mailpiece often determines speed and postal rate discounting.
An address database provides a link to prospective customers by creating the ability for a list user to reach out to those customers represented by the database""s individual addresses. The value of the database is measured in terms of the discounts available for the sending of mailpieces, the scope of the target audience, the detail, and accuracy of an individual address. The value is thus derived from the detail found in its contents.
There is thus great value in assembling files for a database where the files are xe2x80x9ccompletexe2x80x9d in detail. The ability to ensure detail of files within an address database has been taught in such prior art as U.S. Pat. No. 5,668,990 for an APPARATUS AND METHOD FOR GENERATING 100% UNITED STATES POSTAL SERVICE BAR CODED LISTS issued Sep. 16, 1997 to Bajorinas et al. (hereinafter referred to as Bajorinas) and assigned to the assignee of the present claimed invention.
Bajorinas disclosed a method and apparatus for generating a coded address list. The method is initiated by inputting an address list to a data processing device which then reads each address record on the address list. As an address record is read, a set of rules is applied to the record to determine whether or not a corresponding bar code can be assigned. If a bar code can be assigned, then the data processing device writes the address record and its corresponding bar code to a first list. If, however, a corresponding bar code is not determined for an address record, then the unmatched address record is posted to a second list. The first list is output for printing, while the second list is saved to memory. With respect to the second list, the system operator can: manually correct an address record on the list; delete the address record; or, output the address record to a printer for non-discounted mailing.
Refinement to file contents within an address database can be further made by employing methods disclosed in such prior art as U.S. Pat. No. 5,799,302 for a METHOD AND SYSTEM FOR MINIMIZING ATTRIBUTE NAMING ERRORS IN SET ORIENTED DUPLICATE DETECTION issued Aug. 25, 1998 to Robert J. Johnson et al. (hereinafter referred to as Johnson) and assigned to the assignee of the present claimed invention.
Johnson disclosed a method and system for detecting duplicate records on a list or in a file. The method steps include entering a list, comprised of one or more records, to a data processing system; then, applying a nickname lookup table to the records to determine a common first name. Once a common name has been determined, the method matches a first record from the list with a second record from the list by comparing the fields of the first record with the fields of at least one other record; the comparison is based on a set of pre-determined criteria. The matching sequence determines a duplicate set, wherein the duplicate set is comprised of at least two records with fields that match. The method then lists matching records sequentially so that the system can create a new record by filling each empty field with a next available corresponding field from a subsequent record within the duplicate set. The newly created record is then retained on the original list; and the duplicate records are placed on a second list. Pre-sorting of the list can occur just prior to the matching sequence as well as just prior to outputting the final list. Additionally, the system operator can be given a number of options to provide flexibility. These options can include: manually correcting a record on the duplicate records list; deleting an address record from the list of duplicates; or, outputting the record.
The value of the perfected files in the address database become readily apparent when the lists are printed to media when forming individual mailpieces to which postage is to be applied. The postal discounts available to the postal service customer are calculated by mailpiece production systems and are therefore only as good as the value of the data input to the system.
Mailpiece production systems are known in the art and have developed with changes in postal service regulations (such as those of the United States Postal Service, or USPS) and with the proliferation of appropriate software applications. In turn, this production has served the need to automate and accelerate to accommodate growth.
As the USPS, together with the postal services of other countries around the world, moves toward more fully automated mail handling in an effort to contain costs while processing ever increasing volumes of mail, automated equipment which sorts and processes mail on the basis of machine readable postal codes, such as the xe2x80x9czip codexe2x80x9d or other forms of postal coding, play an ever more significant role. In the United States, postal service regulations provide for a xe2x80x9cPostnetxe2x80x9d bar code which represents the five, nine, or eleven digit zip code of the destination address in a machine readable form. 4-State can be utilized within Canada.
Systems have been used or proposed to meet the need to produce mail pieces imprinted with the Postnet bar code, and to enable mailers to obtain the benefit of the discounts offered for such mail. One such system is described in U.S. Pat. No. 4,858,907, for a SYSTEM FOR FEEDING ENVELOPES FOR SIMULTANEOUS PRINTING OF ADDRESSES AND BAR CODES, issued to Eisner et al. (hereinafter referred to as Eisner-1) on Aug. 22, 1989. This patent discloses a system for printing envelopes with addresses, zip codes, and corresponding bar codes. The system is controlled by a computer which includes software for converting a zip code included in the address into bar code form and then adding the bar code representation to the material to be printed on the envelope.
Another example of the art is found in U.S. Pat. No. 5,326,181 for an ENVELOPE ADDRESSING SYSTEM ADAPTED TO SIMULTANEOUSLY PRINT ADDRESSES AND BAR CODES; issued on Jul. 5, 1994 to Eisner et al. (hereinafter referred to as Eisner-2). This patent teaches a method of addressing substrates with a human readable address containing a zip code and a bar code corresponding to the zip code. The method utilizes a computer and comprises several steps. These steps include: receiving in the computer a plurality of addresses, with pre-existing zip code information contained in each as complete address data, and requiring no manual inputting or identification; automatically scanning the address data in the computer to find the pre-existing zip code; automatically converting, in the computer, the pre-existing zip code into a line of corresponding bar code; and, essentially simultaneously printing the complete address, including zip code information and corresponding bar code, on a substrate, under control of the computer so that the substrate produced has human readable zip code and machine readable bar code information thereon.
Additionally, a system for printing envelopes with addresses including bar code is disclosed in commonly assigned U.S. Pat. No. 5,175,691 for a SYSTEM AND METHOD FOR CONTROLLING AN APPARATUS TO PRODUCE ITEMS IN SELECTED CONFIGURATIONS; issued on Dec. 29, 1992 to Baker et al. (hereinafter referred to as Baker), which describes a system for printing mail pieces which includes a printer for printing sheets and envelope forms and a folder-sealer mechanism for folding the envelope form around the sheets to form a mail piece, and a computer based control system for controlling the printer and folder. In the system of this application, when an operator is creating a file of letters to be printed, the operator may designate a selected field within each letter as containing the destination address. The system will then extract the information in this designated field and with it create a new page of material to be printed on the envelope form; and, if the address within the designated field includes a zip code, the system will add a corresponding barcode to the new page. The system then adds this new page to the file before the file is output.
U.S. Pat. No. 5,278,947 for a SYSTEM FOR AUTOMATIC PRINTING OF MAIL PIECES; issued Jan. 11, 1994 to Balga, Jr. et al. (hereinafter referred to as Balga), and assigned to the assignee of the present claimed invention, is for a system which includes a printer for printing text in response to the input of signals. The printer has a capability to selectively print either sheets or envelopes. The system further includes a controller for output of a sequence of signals representative of materials to be printed on a sheet which forms part of the mail piece, where the sequence includes a subset of signals representative of an address.
In accordance with another aspect of the Balga invention, the system includes a scanning mechanism for identifying a character string which conforms to a valid postal coding standard. The system further includes a mechanism for identifying the character string as a valid postal code. Additionally, the system forms the destination address to include a line including the postal code and a selected number of proceeding lines of text.
The ability to structure software coding is extremely important when linking data to be downloaded to a printer being utilized in the addressing environment. U.S. Pat. No. 5,583,970 for a PRINTER COMMAND SET FOR CONTROLLING ADDRESS AND POSTAL CODE PRINTING FUNCTIONS, issued Dec. 10, 1996 to Strobel (hereinafter referred to as Strobel), and assigned to the assignee of the present claimed invention, is instructive in this respect.
Strobel is a method and system for printing images to a substrate wherein the commands normally input by an operator, or resident within the printer, can be determined at a host data processor. The system can control address and postal code printing functions beginning at the host computer together. The system will derive printing data, including address data, from a selected application resident in the host computer. The host computer creates and then transmits printer command sets and printing data, via transmitting means to a microprocessor within the printer. The microprocessor drives a language interpreter which directs the printer commands to a parsing step for determining the address location from within the data to be printed. The language interpreter then assigns delivery point digits to a zip code that was isolated from the transmitted address data. The newly created zip code is then matched with the bar code data stored within the microprocessor""s corresponding memory. A bar code corresponding to the new zip code is selected. The language interpreter then directs the printer""s controller to prepare to print the address with its corresponding zip code, any graphics images that may have been included within the print data, and text, if any. The printer controller positions the bar code for printing, and then prints the bar code and address data, zip code, and any graphics images and text to an envelope or other substrate.
Thus, Strobel overcame the limitations of the prior art by providing flexibility in determining what data, and how much, may be downloaded for printing to a substrate. Flexibility is accomplished by controlling address and postal coding functions in the printer from a host computer. The invention thus simplifies the firmware required in a selected printer, or can allow the performance of additional tasks or provide for greater database functionality, under the direction of the printer microprocessor. Thus, printer ROM memory can be reduced or freed up for other tasks, and RAM memory can be increased to handle more detailed data.
A particular limitation to current methods and systems, however, is found in the assembly of the address database which fuels the prior art detailed above. Mailpiece production systems and methods of perfecting database files must have raw material in the form of an address file. The current methods of identifying such raw material are limited to direct input by a system operator or by parsing of data in list formats.
Therefore, it is an object of the present invention to provide for a method and system for determining and extracting an address from a label print stream that can be utilized within in an envelop printing routine.
The invention is a method and system of capturing a destination address from a label print stream in a data processing system which is capable of supporting an object oriented programming environment. The data processing system further comprises: a microprocessor for manipulating data; a print stream application operatively connected to said microprocessor for creating said label print stream; and, transmission means for transmitting said print stream to said virtual driver.
The method begins with the initiation of a print stream from a label application. A virtual driver is selected as the intended destination device of the print stream. The virtual driver, in turn, directs the print stream from the virtual driver to a print intercept automation server (PIAS). The PIAS causes the system to display on a monitor for viewing by a system operator a print field selection and comprises a print field display routine.
The envelope print field is a set of objects established in the object oriented environment and comprises a mailpiece OCX and an indicia printing control object.
The system operator selects an envelope print field from the print intercept automation server. The print stream is then parsed to extract a set of address data defining a destination address from the print stream by the print automation server. The address parsing routine further selects an address parsing module which comprises parsing instructions. The parsing instructions comprise instructions which control parsing the print stream to identify address data resident in the print stream. The instructions further facilitate the compiling of an address list comprising the address data. The parsed address data is applied to the selected envelope print field; and the envelope is then printed.